using MediatR;
using S.O.ErrorCode;
using S.O.Domain.Dto.Output;

namespace S.O.Api.Read.Application.Command.Medical
{
    /// <summary>
    /// 获取患者药品信息命令
    /// 用于门诊收费页面显示患者的药品消费明细
    /// </summary>
    public class GetPatientMedicinesCommand : IRequest<APIResult<List<PatientMedicineDto>>>
    {
        /// <summary>
        /// 患者ID
        /// </summary>
        public long PatientId { get; set; }
        
        /// <summary>
        /// 挂单号（可选）
        /// </summary>
        public string? RegistrationNo { get; set; }
        
        /// <summary>
        /// 是否只获取未付费的药品
        /// </summary>
        public bool OnlyUnpaid { get; set; } = true;
    }
}